]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
st/button: Notify :pressed changes
authorFlorian Müllner <fmuellner@gnome.org>
Fri, 22 Nov 2019 17:53:26 +0000 (18:53 +0100)
committerFlorian Müllner <fmuellner@gnome.org>
Fri, 22 Nov 2019 17:55:40 +0000 (18:55 +0100)
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/846

src/st/st-button.c

index c1ea7b99152e30b4dc194ff45c04fd2fc2feb993..c2c48a51018dcce27216652613b1feddf48c7f87 100644 (file)
@@ -139,13 +139,17 @@ st_button_press (StButton             *button,
                  ClutterEventSequence *sequence)
 {
   StButtonPrivate *priv = st_button_get_instance_private (button);
+  gboolean active_changed = priv->pressed == 0 || sequence;
 
-  if (priv->pressed == 0 || sequence)
+  if (active_changed)
     st_widget_add_style_pseudo_class (ST_WIDGET (button), "active");
 
   priv->pressed |= mask;
   priv->press_sequence = sequence;
   priv->device = device;
+
+  if (active_changed)
+    g_object_notify_by_pspec (G_OBJECT (button), props[PROP_PRESSED]);
 }
 
 static void
@@ -171,6 +175,7 @@ st_button_release (StButton             *button,
   priv->press_sequence = NULL;
   priv->device = NULL;
   st_widget_remove_style_pseudo_class (ST_WIDGET (button), "active");
+  g_object_notify_by_pspec (G_OBJECT (button), props[PROP_PRESSED]);
 
   if (clicked_button || sequence)
     {